var utils = require('../../utils/utils.js');
var app=getApp();


// pages/movies/movies.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    searchPanelShow:false,  //存输入框是否显示X号
    containerShow:true,  //三个栏目的显示隐藏
    searchResult:{},  //搜索列表数据
    inputValue: '', //输入框初始内容，作用： 为了点击X号，变为最初， input框的value属性，为初始值，如果一开始是空字符串，那么会显示placeholder的内容
  },
  // 输入框激活 
  onBindFocus(){
    this.setData({
      searchPanelShow: true,
      containerShow:false
    })
  },
  // 输入框失焦
  onBindBlur(e){
    // console.log(e.detail.value); //失去焦点获取输入框的内容
    // 思路， 失焦，拿到内容，请求数据
    var text = e.detail.value;
    var url = app.globalData.doubanBaseUrl + '/v2/movie/search?q=' + text;
    this.getMovieListData(url,'searchResult',''); //获取数据
  },
  // 输入框点击X号触发
  onCancelImgTap(){
    this.setData({
      searchPanelShow: false,
      containerShow:true,
      searchResult:{},  //把列表数据清空
      inputValue:''
    })
  },
  // 获取数据函数封装，列表页用
  getMovieListData(url, settedKey, categoryTitle){
    var that=this;
     wx.request({
       url: url,
       method:'GET',
       header:{
         "Content-Type": "json"
       },
       success(res){
        //  请求成功，调用结果处理函数
         that.processDoubanData(res.data, settedKey, categoryTitle)
        //  that.setData({
        //    settedKey:
        //  });
        //  console.log(that)
       },
       fail(err){
         console.log(err)
       }
     })
  },
  // 数据回来处理数据
  processDoubanData(data, settedKey, categoryTitle){
    // console.log(data);
    var movies=[];
    for (var item in data.subjects){
      var doubanObj = data.subjects[item];
      var title = doubanObj.title;
      if(title.length>=6){  //处理标题过长
        title=title.substring(0,6)+'...';
      }
      var obj={
        stars: utils.convertToStarsArray(doubanObj.rating.stars), //处理小星星个数
        title: title,  //标题
        average: doubanObj.rating.average,  //评分
        coverageUrl: doubanObj.images.large,  //图片地址
        movieId: doubanObj.id,   //电影ID
      };
      movies.push(obj);
    }
    var readyData={};
    readyData[settedKey]={
      categoryTitle: categoryTitle,
      movies:movies
    }
    // return readyData;
    this.setData(readyData); //最后这里设置渲染
    // console.log(readyData);
  },
  // 列表点击更多触发
  onMoreTap(e){
    // console.log(e.currentTarget.dataset.category); //点击的谁的更多
    var category = e.currentTarget.dataset.category;
     wx.navigateTo({
       url: './more-movie/more-movie?category=' + category,
     })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(app.globalData.doubanBaseUrl);

    // 一开始进来显示  正在热映  即将上映  豆瓣Top250

    var inTheatersUrl = app.globalData.doubanBaseUrl +
      "/v2/movie/in_theaters" + "?start=0&count=3";
    var comingSoonUrl = app.globalData.doubanBaseUrl +
      "/v2/movie/coming_soon" + "?start=0&count=3";
    var top250Url = app.globalData.doubanBaseUrl +
      "/v2/movie/top250" + "?start=0&count=3";

    this.getMovieListData(inTheatersUrl, "inTheaters", "正在热映");
    this.getMovieListData(comingSoonUrl, "comingSoon", "即将上映");
    this.getMovieListData(top250Url, "top250", "豆瓣Top250");
  },
  // 点击列表其中一个电影
  onMovieTap(e){
    console.log(e);
    // console.log(e.currentTarget.dataset.movieid)
    var movieid = e.currentTarget.dataset.movieid;
    console.log(8888);
    wx.navigateTo({
      url: 'movie-detail/movie-detail?movieid=' + movieid,
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
  
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
  
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
  
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
  
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
  
  }
})